<?php
	
/*
 * Modelo: "clientes.php"
 *
 * Realizado por:
 * 	Carlos Calvo.
 */
 
	@include_once('sybasebd.php');
	@include_once('auditoria.php');
	
	class Clientes {
					
		// Variables del Modelo
		var $rif;
		var $razon_social;
		var $cedula;
		var $nombre;
		var $apellido;	
		var $domicilio;
		var $telefono;
		var $celular;				
		var $respuesta;
		
		
		//	FUNCION - VERIFICAR CLIENTE
		// =================================================================================================================
		function verificar_cliente( $rif ) {		
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select rif as rif
					from cliente 
					where rif = '".$rif."'";
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar el Cliente.");
			$this->respuesta = $conexion->fetch_array_BD();
			
			$conexion->desconectar_BD;			
			if ( $this->respuesta[rif] != "" ) {				
				return false;					// Si Existe
			} else {		
				return true;					// Si no Existe
			}
		}
		
		
		//	FUNCION - INSERTAR CLIENTE
		// =================================================================================================================
		
		function insertar( $rif, $razon_social, $cedula, $nombre, $apellido, $domicilio, $telefono, $celular ) {			
			$ocurrencia = $this->verificar_material( $rif );
			
			if ( $ocurrencia == true ) {						
				$conexion = new Sybasebd;
				$var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
						
				$sql = "insert into material (rif, razon_social, cedula, nombre, apellido, domicilio, telefono, celular ) values (";
				
				$sql = $sql.$rif.", ";
				$sql = $sql."'".strtoupper($razon_social)."', ";
				$sql = $sql.$cedula.", ";
				$sql = $sql."'".strtoupper($nombre)."', "; 
				$sql = $sql."'".strtoupper($apellido)."', ";
				$sql = $sql."'".strtoupper($domicilio)."', ";
				$sql = $sql."'".strtoupper($telefono)."', ";
				$sql = $sql."'".strtoupper($celular)."')";
								
				//echo "<br>SQL: ".$sql."<br>";
				$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo agregar el Cliente ".$razon_social.".");
												
				// Registro de Auditoria
				$auditoria 	= new Auditorias;
				$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "32" );
							
				$conexion->desconectar_BD;												
				return true;
			} else {
				return false;
			}
		}
		
		
		//	FUNCION - MODIFICAR CLIENTE
		// =================================================================================================================
				
		function modificar( $rif, cedula, nombre, apellido, domicilio, telefono, celular ) {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "update cliente set 
						cedula = ".$cedula.",
						nombre = '".strtoupper($nombre)."',
						apellido = '".strtoupper($apellido)."',
						domicilio = '".strtoupper($domicilio)."',
						telefono = '".strtoupper($telefono)."',
						celular = '".strtoupper($celular)."' 
					where rif = '".$rif."'";
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo modificar el Cliente ".$rif.".");
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "33" );
						
			$conexion->desconectar_BD;			
			return true;
		}
		
		
		//	FUNCION - CONSULTAR TODOS LOS CLIENTES
		// =================================================================================================================
		
		function consultar() {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select rif as rif,
						razon_social as razon_social,
						cedula as cedula,
						nombre as nombre,
						apellido as apellido, 
						domicilio as domicilio,
						telefono as telefono,
						celular as celular 
					from cliente
					order by razon_social";
											
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar los Clientes.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_clientes[$i][0] = $this->respuesta[rif];
				$lista_clientes[$i][1] = $this->respuesta[razon_social];	
				$lista_clientes[$i][2] = $this->respuesta[cedula];
				$lista_clientes[$i][3] = $this->respuesta[nombre];
				$lista_clientes[$i][4] = $this->respuesta[apellido];
				$lista_clientes[$i][5] = $this->respuesta[domicilio];
				$lista_clientes[$i][6] = $this->respuesta[telefono];
				$lista_clientes[$i][7] = $this->respuesta[celular];			
				$i++;
			}
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "34" );
			
			$conexion->desconectar_BD;
			return $lista_clientes;
		}
		
		
		//	FUNCION - ELIMINAR UN CLIENTE
		// =================================================================================================================
				
		function eliminar( $rif ) {			
			$conexion = new Sybasebd;
			$var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "delete from cliente
					where rif = '".$rif."'";
															
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo Eliminar el Cliente ".$rif.".");
			
			// Registro de Auditoria
			$auditoria 	= new Auditorias;
			$this->respuesta = $auditoria->insertar( $_SESSION['nombre_usuario'],  "35" );
			
			$conexion->desconectar_BD;		
			return true;
		}
		
		
		//	FUNCION - CONSULTAR UN CLIENTE
		// =================================================================================================================
		
		function consultar_cliente( $rif ) {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
									
			$sql = "select rif as rif, 
						razon_social as razon_social,
						cedula as cedula,
						nombre as nombre,
						apellido as apellido, 
						domicilio as domicilio,
						telefono as telefono,
						celular as celular
					from cliente 
					where rif = '".$rif."'";
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar el Cliente ".$rif.".");			
			$this->respuesta = $conexion->fetch_array_BD();
				$info_cliente[0] = $this->respuesta[rif];
				$info_cliente[1] = $this->respuesta[razon_social];	
				$info_cliente[2] = $this->respuesta[cedula];
				$info_cliente[3] = $this->respuesta[nombre];
				$info_cliente[4] = $this->respuesta[apellido];
				$info_cliente[5] = $this->respuesta[domicilio];
				$info_cliente[6] = $this->respuesta[telefono];
				$info_cliente[7] = $this->respuesta[celular];
			
			$conexion->desconectar_BD;			
			return $info_cliente;
		}
		
		
		//	FUNCION - CONSULTAR CLIENTES PARA ELIMINAR
		// =================================================================================================================
		
		function consultar_eliminar() {			
			$conexion = new Sybasebd;
            $var = $conexion->conexion_BD($_SESSION['manejador_bd'],$_SESSION['usuario_bd'],$_SESSION['password_bd'],$_SESSION['base_de_datos'],$_SESSION['rol_bd']);
			
			$sql = "select rif as rif, 
						razon_social as razon_social 
					from cliente 
					where rif not in ( 
							select rif 
							from historico_cliente 
							where cantidad = 0 ) ";
						
			//echo "<br>SQL: ".$sql."<br>";
			$this->respuesta = $conexion->consulta_BD($sql) or die("No se pudo consultar los Clientes para Eliminar.");			
			$i = 0;
			while ( $this->respuesta = $conexion->fetch_array_BD() ) {
				$lista_eliminar[$i][1] = $this->respuesta[rif];
				$lista_eliminar[$i][2] = $this->respuesta[razon_social];		
				$i++;
			}				
			
			$conexion->desconectar_BD;			
			return $lista_eliminar;
		}		
	}
?>